home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 3 / BBS in a box - Trilogy III.iso / Files / Bus / T-Z / VCR+(app+src) Folder / Sources / offset.c < prev    next >
Encoding:
C/C++ Source or Header  |  1993-12-14  |  523 b   |  30 lines  |  [TEXT/KAHL]

  1. #include "VCRplus.h"
  2.  
  3. void    offset(long day, long year, long top, long *ofout, long *topout)
  4. {
  5.     long     i, t, tx, off, digits, burp;
  6.     long     pwr ;
  7.  
  8.     pwr = 1 ; digits = 0;
  9.     while(top >= pwr) { digits++; pwr *= 10; }
  10.     pwr = pwr / 10 ;
  11.  
  12.     t = tx = top ;
  13.     off = 0;
  14.     while(tx > 0) { off += (tx % 10);   tx /= 10; }
  15.  
  16. again:
  17.     for(i=0; i<=(year%16); i++)
  18.         {
  19.         burp = ( (map_top(day, i, t, digits)) % 10 ) ;
  20.         off += burp ;
  21.         }
  22.  
  23.     t = map_top(day, year, t, digits) ;
  24.     if(t < pwr) goto again ;
  25.  
  26.  
  27.     *ofout = (off % 32) ;
  28.     *topout = (t) ;
  29. }
  30.